home *** CD-ROM | disk | FTP | other *** search
/ Item MB Quick & Easy 2.0 / Item MB Quick & Easy 2.0.iso / mbfacad / mb02610.lsp < prev    next >
Lisp/Scheme  |  1998-03-15  |  15KB  |  381 lines

  1. ;=============026.10 SCHARNIER PA, links
  2.  
  3. (EAITDBL "0002610")
  4. (EAITmsg "mb_mld10" "\n" "002" nil) (princ "........") (princ EAITnrx) (princ "\n")
  5. (princ)
  6.  
  7. (defun C:02610D1 (/ P1 Wi)
  8.    (EAITDBL "0002610")
  9.    (princ (strcat "\n\n" EAITbez1))
  10.    (EAITvari)
  11.    (EAITvars)
  12.    (setvar "ORTHOMODE" 0)
  13.    (EAITbpt nil nil nil)
  14.    (setq P1 (getpoint))
  15.    (if (= P1 nil)(setq P1 (EAITrpt)))
  16.    (setvar "OSMODE" 0)
  17.    (setvar "ORTHOMODE" 1)
  18.    (EAITmsg "mb_mld10" "\n" "003" nil)            ;Drehwinkel
  19.    (command EAITege (strcat EAITpfn "02610d1") P1 "" "" EAITofkei pause)
  20.  
  21.    (setq Wi (EAITbw))
  22.    (command EAITege (strcat EAITpfn "EAITinfo") (polar P1 (+ Wi (EAITgib 320)) 5) "" "" ""
  23.                     EAITbez1 EAITbez2 EAITlie1 EAITlie2 EAITwer1 EAITwer2 (rtos EAITl1 2 1) (rtos EAITb1 2 1) EAITnr
  24.    )
  25.    (EAITDBL "0002628")
  26.    (command EAITege (strcat EAITpfn "EAITinfo") (polar P1 (+ Wi (EAITgib 352)) 19.5) "" "" ""
  27.                     EAITbez1 EAITbez2 EAITlie1 EAITlie2 EAITwer1 EAITwer2 (rtos EAITl1 2 1) (rtos EAITb1 2 1) EAITnr
  28.    )
  29.  
  30.    (EAITvarz2)
  31.    (princ)
  32. )
  33.  
  34.  
  35.  
  36. (defun C:02610S1 (/ P1 Wi)
  37.    (EAITDBL "0002610")
  38.    (princ (strcat "\n\n" EAITbez1))
  39.    (EAITvari)
  40.    (EAITvars)
  41.    (setvar "ORTHOMODE" 0)
  42.    (EAITbpt nil nil nil)
  43.    (setq P1 (getpoint))
  44.    (if (= P1 nil)(setq P1 (EAITrpt)))
  45.    (setvar "OSMODE" 0)
  46.    (setvar "ORTHOMODE" 1)
  47.    (EAITmsg "mb_mld10" "\n" "003" nil)            ;Drehwinkel
  48.    (command EAITege (strcat EAITpfn "02610s1") P1 "" "" EAITofkei pause)
  49.  
  50.    (setq Wi (EAITbw))
  51.    (command EAITege (strcat EAITpfn "EAITinfo") (polar P1 (+ Wi (EAITgib 85)) 16) "" "" ""
  52.                     EAITbez1 EAITbez2 EAITlie1 EAITlie2 EAITwer1 EAITwer2 (rtos EAITl1 2 1) (rtos EAITb1 2 1) EAITnr
  53.    )
  54.    (EAITDBL "0002628")
  55.    (command EAITege (strcat EAITpfn "EAITinfo") (polar P1 (+ Wi (EAITgib 65)) 28) "" "" ""
  56.                     EAITbez1 EAITbez2 EAITlie1 EAITlie2 EAITwer1 EAITwer2 (rtos EAITl1 2 1) (rtos EAITb1 2 1) EAITnr
  57.    )
  58.  
  59.    (EAITvarz2)
  60.    (princ)
  61. )
  62.  
  63.  
  64.  
  65. (defun C:02610S2 (/ P1 Wi)
  66.    (EAITDBL "0002610")
  67.    (princ (strcat "\n\n" EAITbez1))
  68.    (EAITvari)
  69.    (EAITvars)
  70.    (setvar "ORTHOMODE" 0)
  71.    (EAITbpt nil nil nil)
  72.    (setq P1 (getpoint))
  73.    (if (= P1 nil)(setq P1 (EAITrpt)))
  74.    (setvar "OSMODE" 0)
  75.    (setvar "ORTHOMODE" 1)
  76.    (EAITmsg "mb_mld10" "\n" "003" nil)            ;Drehwinkel
  77.    (command EAITege (strcat EAITpfn "02610s2") P1 "" "" EAITofkei pause)
  78.  
  79.    (setq Wi (EAITbw))
  80.    (command EAITege (strcat EAITpfn "EAITinfo") (polar P1 (+ Wi (EAITgib 275)) 16) "" "" ""
  81.                     EAITbez1 EAITbez2 EAITlie1 EAITlie2 EAITwer1 EAITwer2 (rtos EAITl1 2 1) (rtos EAITb1 2 1) EAITnr
  82.    )
  83.    (EAITDBL "0002628")
  84.    (command EAITege (strcat EAITpfn "EAITinfo") (polar P1 (+ Wi (EAITgib 295)) 28) "" "" ""
  85.                     EAITbez1 EAITbez2 EAITlie1 EAITlie2 EAITwer1 EAITwer2 (rtos EAITl1 2 1) (rtos EAITb1 2 1) EAITnr
  86.    )
  87.  
  88.    (EAITvarz2)
  89.    (princ)
  90. )
  91.  
  92.  
  93.  
  94.  
  95. (defun C:02610V1 (/ P1 Wi)
  96.    (EAITDBL "0002610")
  97.    (princ (strcat "\n\n" EAITbez1))
  98.    (EAITvari)
  99.    (EAITvars)
  100.    (setvar "ORTHOMODE" 0)
  101.    (EAITbpt nil nil nil)
  102.    (setq P1 (getpoint))
  103.    (if (= P1 nil)(setq P1 (EAITrpt)))
  104.    (setvar "OSMODE" 0)
  105.    (setvar "ORTHOMODE" 1)
  106.    (EAITmsg "mb_mld10" "\n" "003" nil)            ;Drehwinkel
  107.    (command EAITege (strcat EAITpfn "02610v1") P1 "" "" EAITofkei pause)
  108.  
  109.    (setq Wi (EAITbw))
  110.    (command EAITege (strcat EAITpfn "EAITinfo") (polar P1 (+ Wi (EAITgib 320)) 5.5) "" "" ""
  111.                     EAITbez1 EAITbez2 EAITlie1 EAITlie2 EAITwer1 EAITwer2 (rtos EAITl1 2 1) (rtos EAITb1 2 1) EAITnr
  112.    )
  113.    (EAITDBL "0002628")
  114.    (command EAITege (strcat EAITpfn "EAITinfo") (polar P1 (+ Wi (EAITgib 330)) 23.5) "" "" ""
  115.                     EAITbez1 EAITbez2 EAITlie1 EAITlie2 EAITwer1 EAITwer2 (rtos EAITl1 2 1) (rtos EAITb1 2 1) EAITnr
  116.    )
  117.  
  118.    (EAITvarz2)
  119.    (princ)
  120. )
  121.  
  122.  
  123.  
  124.  
  125. (defun C:02610Z1 (/ P1 P2 L n i Wi Wix LGes P)
  126.    (EAITDBL "0002610")
  127.    (princ (strcat "\n\n" EAITbez1))
  128.    (EAITvari)
  129.    (EAITvars)
  130.    (setvar "ORTHOMODE" 1)
  131.    (setvar "OSMODE" 9)
  132.    (setq L (- EAITlmin 1))
  133.    (while (< L EAITlmin)
  134.       (EAITbpt nil nil (strcat (EAITmg "mb_mld10" "006")" "(EAITmg "mb_mld10" "015")))    ;Startpunkt (Return = relativ):
  135.       (setq P1 (getpoint))
  136.       (if (= P1 nil)(setq P1 (EAITrpt)))
  137.       (EAITbpt nil nil (strcat (EAITmg "mb_mld10" "007")" "(EAITmg "mb_mld10" "015")))    ;Endpunkt (Return = relativ): 
  138.       (setq P2 (getpoint P1))
  139.       (initget 4 "?")
  140.       (EAITmsg "mb_mld12" "\n" "005" " ")            ;Anzahl der Scharniere (2,3,...,?): <2>
  141.       (setq n (getint))
  142.       (setq Wi   (angle P1 P2)     )
  143.       (setq Wix  (- (EAITbig Wi) 90)   )
  144.       (setq LGes (distance P1 P2)  )
  145.       (cond ((= n nil)(setq n 2))
  146.             ((= n  0 )(setq n 2))
  147.             ((= n "?")(progn
  148.                           (setq n (1+ (fix (+ (/ LGes 600) 0.5))))
  149.                           (if (< n 2)(setq n 2))
  150.                       )
  151.             )
  152.       )
  153.       (setq L    (/ (- LGes 160)(float (- n 1))))
  154.       (if (< L EAITlmin)(progn (EAITmsg "mb_mld12" "\n" "006" " ")(princ EAITlmin)(EAITmsg "mb_mld13" nil "006" nil)(EAITmsg "mb_mld12" " " "007" " ")))  
  155.                        ;Ungültige Eingabe: es werden min. 32mm je Scharnier benötigt!
  156.    )
  157.    (setq P (polar P1 Wi 80) )
  158.    (setvar "ORTHOMODE" 0)
  159.    (setvar "OSMODE" 0)
  160.    (repeat n
  161.          (EAITDBL "0002610")
  162.          (command EAITege (strcat EAITpfn "02610vz") P "" "" EAITofkei Wix
  163.                   EAITege (strcat EAITpfn "EAITinfo") (polar P (+ (- Wi (EAITgib 90)) (EAITgib 72)) 13.5) "" "" Wix
  164.                            EAITbez1 EAITbez2 EAITlie1 EAITlie2 EAITwer1 EAITwer2 (rtos EAITl1 2 1) (rtos EAITb1 2 1) EAITnr
  165.          )
  166.          (EAITDBL "0002628")
  167.       (command EAITege (strcat EAITpfn "EAITinfo") (polar P (+ (- Wi (EAITgib 90)) (EAITgib 11)) 20.5) "" "" Wix
  168.                            EAITbez1 EAITbez2 EAITlie1 EAITlie2 EAITwer1 EAITwer2 (rtos EAITl1 2 1) (rtos EAITb1 2 1) EAITnr
  169.          )
  170.          (setq P (polar P Wi L))
  171.    )
  172.    (EAITvarz2)
  173.    (princ)
  174. )
  175.  
  176.  
  177.  
  178.  
  179. (defun C:02610Z2 (/ P1 P2 L n i Wi Wix LGes P)
  180.    (EAITDBL "0002610")
  181.    (princ (strcat "\n\n" EAITbez1))
  182.    (EAITvari)
  183.    (EAITvars)
  184.    (setvar "ORTHOMODE" 1)
  185.    (setvar "OSMODE" 9)
  186.    (setq L (- EAITlmin 1))
  187.    (while (< L EAITlmin)
  188.       (EAITbpt nil nil (strcat (EAITmg "mb_mld10" "006")" "(EAITmg "mb_mld10" "015")))    ;Startpunkt (Return = relativ):
  189.       (setq P1 (getpoint))
  190.       (if (= P1 nil)(setq P1 (EAITrpt)))
  191.       (EAITbpt nil nil (strcat (EAITmg "mb_mld10" "007")" "(EAITmg "mb_mld10" "015")))    ;Endpunkt (Return = relativ): 
  192.       (setq P2 (getpoint P1))
  193.       (initget 4 "?")
  194.       (EAITmsg "mb_mld12" "\n" "005" " ")            ;Anzahl der Scharniere (2,3,...,?): <2>
  195.       (setq n (getint))
  196.       (setq Wi   (angle P1 P2)     )
  197.       (setq Wix  (- (EAITbig Wi) 90)   )
  198.       (setq LGes (distance P1 P2)  )
  199.       (cond ((= n nil)(setq n 2))
  200.             ((= n  0 )(setq n 2))
  201.             ((= n "?")(progn
  202.                           (setq n (1+ (fix (+ (/ LGes 600) 0.5))))
  203.                           (if (< n 2)(setq n 2))
  204.                       )
  205.             )
  206.       )
  207.       (setq L    (/ (- LGes 160)(float (- n 1))))
  208.       (if (< L EAITlmin)(progn (EAITmsg "mb_mld12" "\n" "006" " ")(princ EAITlmin)(EAITmsg "mb_mld13" nil "006" nil)(EAITmsg "mb_mld12" " " "007" " ")))  
  209.                        ;Ungültige Eingabe: es werden min. 32mm je Scharnier benötigt!
  210.    )
  211.    (setq P    (polar P1 Wi 80) )
  212.    (setvar "ORTHOMODE" 0)
  213.    (setvar "OSMODE" 0)
  214.    (setq i 1)
  215.    (repeat n
  216.          (if (< i n)
  217.             (progn (command EAITege (strcat EAITpfn "02610sz") P "" "" EAITofkei Wix)
  218.                    (EAITDBL "0002610")
  219.                  (command EAITege (strcat EAITpfn "EAITinfo") (polar P (+ (- Wi (EAITgib 90)) (EAITgib 40)) 15) "" "" Wix
  220.                                    EAITbez1 EAITbez2 EAITlie1 EAITlie2 EAITwer1 EAITwer2 (rtos EAITl1 2 1) (rtos EAITb1 2 1) EAITnr
  221.                     )
  222.                     (EAITDBL "0002628")
  223.                  (command EAITege (strcat EAITpfn "EAITinfo") (polar P (- Wi (EAITgib 90)) 1.5) "" "" Wix
  224.                                    EAITbez1 EAITbez2 EAITlie1 EAITlie2 EAITwer1 EAITwer2 (rtos EAITl1 2 1) (rtos EAITb1 2 1) EAITnr
  225.                     )
  226.             )
  227.          (progn (command EAITege (strcat EAITpfn "02610sz") P "" "" EAITofkei Wix)
  228.                    (EAITDBL "0002610")
  229.                  (command EAITege (strcat EAITpfn "EAITinfo") (polar P (+ (- Wi (EAITgib 90)) (EAITgib 40)) 15) "" "" Wix
  230.                                    EAITbez1 EAITbez2 EAITlie1 EAITlie2 EAITwer1 EAITwer2 (rtos EAITl1 2 1) (rtos EAITb1 2 1) EAITnr
  231.                     )  
  232.                     (EAITDBL "0002628")
  233.                     (command EAITege (strcat EAITpfn "EAITinfo") (polar P (- Wi (EAITgib 90)) 1.5) "" "" Wix
  234.                                    EAITbez1 EAITbez2 EAITlie1 EAITlie2 EAITwer1 EAITwer2 (rtos EAITl1 2 1) (rtos EAITb1 2 1) EAITnr
  235.                     )
  236.          )
  237.          )
  238.          (setq P (polar P Wi L)
  239.                i (1+ i))
  240.    )
  241.    (EAITvarz2)
  242.    (princ)
  243. )
  244.  
  245.  
  246.  
  247. (defun C:02610Z3 (/ P1 P2 L n i Wi Wix LGes P)
  248.    (EAITDBL "0002610")
  249.    (princ (strcat "\n\n" EAITbez1))
  250.    (EAITvari)
  251.    (EAITvars)
  252.    (setvar "ORTHOMODE" 1)
  253.    (setvar "OSMODE" 9)
  254.    (setq L (- EAITlmin 1))
  255.    (while (< L EAITlmin)
  256.       (EAITbpt nil nil (strcat (EAITmg "mb_mld10" "006")" "(EAITmg "mb_mld10" "015")))    ;Startpunkt (Return = relativ):
  257.       (setq P1 (getpoint))
  258.       (if (= P1 nil)(setq P1 (EAITrpt)))
  259.       (EAITbpt nil nil (strcat (EAITmg "mb_mld10" "007")" "(EAITmg "mb_mld10" "015")))    ;Endpunkt (Return = relativ): 
  260.       (setq P2 (getpoint P1))
  261.       (initget 4 "?")
  262.       (EAITmsg "mb_mld12" "\n" "005" " ")            ;Anzahl der Scharniere (2,3,...,?): <2>
  263.       (setq n (getint))
  264.       (setq Wi   (angle P1 P2)     )
  265.       (setq Wix  (- (EAITbig Wi) 90)   )
  266.       (setq LGes (distance P1 P2)  )
  267.       (cond ((= n nil)(setq n 2))
  268.             ((= n  0 )(setq n 2))
  269.             ((= n "?")(progn
  270.                           (setq n (1+ (fix (+ (/ LGes 600) 0.5))))
  271.                           (if (< n 2)(setq n 2))
  272.                       )
  273.             )
  274.       )
  275.       (setq L    (/ (- LGes 160)(float (- n 1))))
  276.       (if (< L EAITlmin)(progn (EAITmsg "mb_mld12" "\n" "006" " ")(princ EAITlmin)(EAITmsg "mb_mld13" nil "006" nil)(EAITmsg "mb_mld12" " " "007" " ")))  
  277.                        ;Ungültige Eingabe: es werden min. 32mm je Scharnier benötigt!
  278.    )
  279.    (setq P    (polar P1 Wi 80) )
  280.    (setvar "ORTHOMODE" 0)
  281.    (setvar "OSMODE" 0)
  282.    (setq i 1)
  283.    (repeat n
  284.          (if (< i n)
  285.             (progn (command EAITege (strcat EAITpfn "02610vz") P "" "" EAITofkei Wix)
  286.                     (EAITDBL "0002610")
  287.                  (command EAITege (strcat EAITpfn "EAITinfo") (polar P (+ (- Wi (EAITgib 90)) (EAITgib 72)) 13.5) "" "" Wix
  288.                                    EAITbez1 EAITbez2 EAITlie1 EAITlie2 EAITwer1 EAITwer2 (rtos EAITl1 2 1) (rtos EAITb1 2 1) EAITnr
  289.                     )
  290.                     (EAITDBL "0002628")
  291.                  (command EAITege (strcat EAITpfn "EAITinfo") (polar P (+ (- Wi (EAITgib 90)) (EAITgib 11)) 20.5) "" "" Wix
  292.                                    EAITbez1 EAITbez2 EAITlie1 EAITlie2 EAITwer1 EAITwer2 (rtos EAITl1 2 1) (rtos EAITb1 2 1) EAITnr
  293.                     )
  294.          )
  295.             (progn (command EAITege (strcat EAITpfn "02612vz") P "" "" EAITofkei Wix)
  296.                     (EAITDBL "0002612")
  297.                  (command EAITege (strcat EAITpfn "EAITinfo") (polar P (+ (- Wi (EAITgib 90)) (EAITgib 72)) 13.5) "" "" Wix
  298.                                    EAITbez1 EAITbez2 EAITlie1 EAITlie2 EAITwer1 EAITwer2 (rtos EAITl1 2 1) (rtos EAITb1 2 1) EAITnr
  299.                     )
  300.                     (EAITDBL "0002628")
  301.                     (command EAITege (strcat EAITpfn "EAITinfo") (polar P (+ (- Wi (EAITgib 90)) (EAITgib 11)) 20.5) "" "" Wix
  302.                                    EAITbez1 EAITbez2 EAITlie1 EAITlie2 EAITwer1 EAITwer2 (rtos EAITl1 2 1) (rtos EAITb1 2 1) EAITnr
  303.                     )
  304.          )
  305.          )
  306.          (setq P (polar P Wi L)
  307.                i (1+ i))
  308.    )
  309.    (EAITvarz2)
  310.    (princ)
  311. )
  312.  
  313.  
  314.  
  315. (defun C:02610Z4 (/ P1 P2 L n i Wi Wix LGes P)
  316.    (EAITDBL "0002610")
  317.    (princ (strcat "\n\n" EAITbez1))
  318.    (EAITvari)
  319.    (EAITvars)
  320.    (setvar "ORTHOMODE" 1)
  321.    (setvar "OSMODE" 9)
  322.    (setq L (- EAITlmin 1))
  323.    (while (< L EAITlmin)
  324.       (EAITbpt nil nil (strcat (EAITmg "mb_mld10" "006")" "(EAITmg "mb_mld10" "015")))    ;Startpunkt (Return = relativ):
  325.       (setq P1 (getpoint))
  326.       (if (= P1 nil)(setq P1 (EAITrpt)))
  327.       (EAITbpt nil nil (strcat (EAITmg "mb_mld10" "007")" "(EAITmg "mb_mld10" "015")))    ;Endpunkt (Return = relativ): 
  328.       (setq P2 (getpoint P1))
  329.       (initget 4 "?")
  330.       (EAITmsg "mb_mld12" "\n" "005" " ")            ;Anzahl der Scharniere (2,3,...,?): <2>
  331.       (setq n (getint))
  332.       (setq Wi   (angle P1 P2)     )
  333.       (setq Wix  (- (EAITbig Wi) 90)   )
  334.       (setq LGes (distance P1 P2)  )
  335.       (cond ((= n nil)(setq n 2))
  336.             ((= n  0 )(setq n 2))
  337.             ((= n "?")(progn
  338.                           (setq n (1+ (fix (+ (/ LGes 600) 0.5))))
  339.                           (if (< n 2)(setq n 2))
  340.                       )
  341.             )
  342.       )
  343.       (setq L    (/ (- LGes 160)(float (- n 1))))
  344.       (if (< L EAITlmin)(progn (EAITmsg "mb_mld12" "\n" "006" " ")(princ EAITlmin)(EAITmsg "mb_mld13" nil "006" nil)(EAITmsg "mb_mld12" " " "007" " ")))  
  345.                        ;Ungültige Eingabe: es werden min. 32mm je Scharnier benötigt!
  346.    )
  347.    (setq P    (polar P1 Wi 80) )
  348.    (setvar "ORTHOMODE" 0)
  349.    (setvar "OSMODE" 0)
  350.    (setq i 1)
  351.    (repeat n
  352.          (if (< i n)
  353.             (progn (command EAITege (strcat EAITpfn "02610sz") P "" "" EAITofkei Wix)
  354.                     (EAITDBL "0002610")
  355.                  (command EAITege (strcat EAITpfn "EAITinfo") (polar P (+ (- Wi (EAITgib 90)) (EAITgib 40)) 15) "" "" Wix
  356.                                    EAITbez1 EAITbez2 EAITlie1 EAITlie2 EAITwer1 EAITwer2 (rtos EAITl1 2 1) (rtos EAITb1 2 1) EAITnr
  357.                     )
  358.                     (EAITDBL "0002628")
  359.                  (command EAITege (strcat EAITpfn "EAITinfo") (polar P (- Wi (EAITgib 90)) 1.5) "" "" Wix
  360.                                    EAITbez1 EAITbez2 EAITlie1 EAITlie2 EAITwer1 EAITwer2 (rtos EAITl1 2 1) (rtos EAITb1 2 1) EAITnr
  361.                     )
  362.          )
  363.             (progn (command EAITege (strcat EAITpfn "02612sz") P "" "" EAITofkei Wix)
  364.                    (EAITDBL "0002612")
  365.                  (command EAITege (strcat EAITpfn "EAITinfo") (polar P (+ (- Wi (EAITgib 90)) (EAITgib 40)) 15) "" "" Wix
  366.                                    EAITbez1 EAITbez2 EAITlie1 EAITlie2 EAITwer1 EAITwer2 (rtos EAITl1 2 1) (rtos EAITb1 2 1) EAITnr
  367.                     )
  368.                     (EAITDBL "0002628")
  369.                     (command EAITege (strcat EAITpfn "EAITinfo") (polar P (- Wi (EAITgib 90)) 1.5) "" "" Wix
  370.                                    EAITbez1 EAITbez2 EAITlie1 EAITlie2 EAITwer1 EAITwer2 (rtos EAITl1 2 1) (rtos EAITb1 2 1) EAITnr
  371.                     )
  372.          )
  373.          )
  374.          (setq P (polar P Wi L)
  375.                i (1+ i))
  376.    )
  377.    (EAITvarz2)
  378.    (princ)
  379. )
  380. (princ)
  381.